package q141_hasCycle;

import CommonClass.Common.ListNode;

import java.util.HashSet;
import java.util.Set;

public class Solution_1 {
    public static void main(String[] args) {

    }

    /**
     * 用一个set来保存每一个listNode，如果发现了有重复的链节点，就返回true
     * @param head
     * @return
     */
    public boolean hasCycle(ListNode head) {
        if (head == null || head.next == null) {
            return false;
        }
        Set<ListNode> set = new HashSet<ListNode>();
        while (head != null){
            if (!set.add(head)){
                return true;
            }
            head = head.next;
        }
        return false;
    }
}
